diff --git a/django/contrib/admin/sites.py b/django/contrib/admin/sites.py
index 61be31d890..cc3057549a 100644
--- a/django/contrib/admin/sites.py
+++ b/django/contrib/admin/sites.py
@@ -453,7 +453,7 @@ class AdminSite:
                 pass
             else:
                 if getattr(match.func, "should_append_slash", True):
-                    return HttpResponsePermanentRedirect("%s/" % request.path)
+                    return HttpResponsePermanentRedirect(request.get_full_path())
         raise Http404
 
     def _build_app_dict(self, request, label=None):
